Шаг 26 - Поддержка сокетов MFC связываемся.

Итак, теперь мы попробуем создать сокет и связать его с портом по адресу. Для создания есть функция Create описание ее большое, мы пока воспользуемся ею по умолчанию. Только сокет создан можно воспользоваться функцией Connect

BOOL Connect( LPCTSTR lpszHostAddress, UINT nHostPort );

Здесь нужно указать имя хостов в виде IP или в виде имени и порт. Создает обычное приложение MFC на базе диалогового окна. Кнопку Connect и код к ней.

void CTestConnectDlg::OnConnect() 
{
WSADATA wsaData; 
if (!AfxSocketInit(&wsaData))
{
	AfxMessageBox("Error Unit");
	return;
}

CSocket sa;
sa.Create();
if (sa.Connect("169.254.59.172",139))
{
	AfxMessageBox("Ok connect ");
} 
else AfxMessageBox("Error Connect");
sa.Close(); 	
}

Да кстати именно такое приложение нужно на базе окна а не просто консольное, в консольном приложении получите ошибку при создании сокета. Итак пробуем связаться. Пока локально. Можно использовать и адрес 127.0.0.1 и порт 135. Прежде чем проверять проверьте для начала соединения используя TelNet

26_1.gif (4817 b)

А потом можно и на yandex сходить.

if (sa.Connect("pop.yandex.ru",25))
{
	AfxMessageBox("Ok connect ");
} 
else AfxMessageBox("Error Connect");

Результат.

26_2.gif (2653 b)

Можете сравнить насколько это сложнее чем API читайте Шаг 5 - Связь сокета с портом.

Hosted by uCoz